62 research outputs found

    Parallel Adaptive Mesh Coarsening for Seismic Tomography

    No full text
    International audienceSeismic tomography enables to model the internal structure of the Earth. In order to improve the precision of existing models, a huge amount of acquired seismic data must be analyzed. The analysis of such massive data require a considerable computing power which can only be delivered by parallel computational equipments. Yet, parallel computation is not sufficient for the task: we also need algorithms to automatically concentrate the computations on the most relevant data parts. The objective of the paper is to present such an algorithm. From an initial regular mesh in which cells carry data with varying relevance, we present a method to aggregate elementary cells so as to homogenize the relevance of data. The result is an irregular mesh which has the ad- vantage over the initial mesh of having orders of magnitude less cells while preserving the geophysical meaning of data. We present both a sequential and a parallel algorithm to solve this problem under the hypotheses and constraints inherited from the geophysical context

    Experiments in running a scientific MPI application on Grid'5000

    Full text link
    received the 'Intel Best Paper Award'.International audienc

    Comparison and tuning of MPI implementation in a grid context

    Get PDF
    International audienceToday, clusters are often interconnected by long distance networks to compose grids and to provide users with a huge number of available ressources. To write parallel applica- tions, developers are generally using the standard communication library MPI, which has been optimized for clusters. However, two main features of grids - long distance networks and technological heterogeneity - raise the question of MPI efficiency in grids. This paper presents an evaluation and tuning of four recent MPI implementations (MPICH2, MPICH-Madeleine, OpenMPI and YAMPII) in a research grid: Grid'5000. The comparison is based on the execution of pingpong and NAS Parallel Bench- marks. We show that these implementations present several performance differences. We show that YAMPII performs better results than the others. But we argue that executing MPI appli- cations on a grid can be beneficial if some specific parameters are well tuned. The paper details, for each implementation, the tuning leading the best performances

    Comparison and tuning of MPI implementations in a grid context

    Get PDF
    Today, clusters are often interconnected by long distance networks within grids to offer a huge number of available ressources to a range of users. MPI, the standard communication library used to write parallel applications, has been implemented for clusters. Two main features of grids: long distance networks and technological heterogeneity, raise the question of MPI efficiency in grids. This report presents an evaluation of four recent MPI implementations (MPICH2, MPICH-Madeleine, OpenMPI and GridMPI) in the french research grid: Grid'5000. The comparison is based on the execution of pingpong, NAS Parallel Benchmarks and a real application in geophysics. We show that this implementations present performance differences. Executing MPI applications on the grid can be beneficial if the parameters are well tuned. The paper details the tuning required on each implementation to get the best performances

    Loop-based Modeling of Parallel Communication Traces

    Get PDF
    This paper describes an algorithm that takes a trace of a distributed program and builds a model of all communications of the program. The model is a set of nested loops representing repeated patterns. Loop bodies collect events representing communication actions performed by the various processes, like sending or receiving messages, and participating in collective operations. The model can be used for compact visualization of full executions, for program understanding and debugging, and also for building statistical analyzes of various quantitative aspects of the program's behavior. The construction of the communication model is performed in two phases. First, a local model is built for each process, capturing local regularities; this phase is incremental and fast, and can be done on-line, during the execution. The second phase is a reduction process that collects, aligns, and finally merges all local models into a global, system-wide model. This global model is a compact representation of all communications of the original program, capturing patterns across groups of processes. It can be visualized directly and, because it takes the form of a sequence of loop nests, can be used to replay the original program's communication actions. Because the model is based on communication events only, it completely ignores other quantitative aspects like timestamps or messages sizes. Including such data would in most case break regularities, reducing the usefulness of trace-based modeling. Instead, the paper shows how one can efficiently access quantitative data kept in the original trace(s), by annotating the model and compiling data scanners automatically.Ce rapport de recherche dĂ©crit un algorithme qui prend en entrĂ©e la trace d'un programme distribuĂ©, et construit un modĂšle de l'ensemble des communications du programme. Le modĂšle prend la forme d'un ensemble de boucles imbriquĂ©es reprĂ©sentant la rĂ©pĂ©tition de motifs de communication. Le corps des boucles regroupe des Ă©vĂ©nements reprĂ©sentant les actions de communication rĂ©alisĂ©es par les diffĂ©rents processus impliquĂ©s, tels que l'envoi et la rĂ©ception de messages, ou encore la participation Ă  des opĂ©rations collectives. Le modĂšle peut servir Ă  la visualisation compact d'exĂ©cutions complĂštes, Ă  la comprĂ©hension de programme et au debugging, mais Ă©galement Ă  la construction d'analyses statistiques de divers aspects quantitatifs du comportement du programme. La construction du modĂšle de communication s'effectue en deux phases. PremiĂšrement, un modĂšle local est construit au sein de chaque processus, capturant les rĂ©gularitĂ©s locales~; cette phase est incrĂ©mentale et rapide, et peut ĂȘtre rĂ©alisĂ©e au cours de l'exĂ©cution. La seconde phase est un processus de rĂ©duction qui rassemble, aligne, et finalement fusionne tous les modĂšles locaux en un modĂšle global dĂ©crivant la totalitĂ© du systĂšme. Ce modĂšle global est une reprĂ©sentation compacte de toutes les communications du programme original, reprĂ©sentant des motifs de communication entre groupes de processus. Il peut ĂȘtre visualisĂ© directement et, puisqu'il prend la forme d'un ensemble de nids de boucles, peut servir Ă  rejouer les opĂ©rations de communication du programme initial. Puisque le modĂšle construit se base uniquement sur les opĂ©rations de communication, il ignore complĂštement d'autres donnĂ©es quantitatives, telles que les informations chronologiques, ou les tailles de messages. L'inclusion de telles donnĂ©es briserait dans la plupart des cas les rĂ©gularitĂ©s topologiques, rĂ©duisant l'efficacitĂ© de la modĂ©lisation par boucles. Nous prĂ©fĂ©rons, dans ce rapport, montrer comment, grĂące au modĂšle construit, il est possible d'accĂ©der efficacement aux donnĂ©es quantitatives si celles-ci sont conservĂ©es dans les traces individuelles, en annotant le modĂšle et en l'utilisant pour compiler automatiquement des programmes d'accĂšs aux donnĂ©es

    Improving Simulations of MPI Applications Using A Hybrid Network Model with Topology and Contention Support

    Get PDF
    Proper modeling of collective communications is essential for understanding the behavior of medium-to-large scale parallel applications, and even minor deviations in implementation can adversely affect the prediction of real-world performance. We propose a hybrid network model extending LogP based approaches to account for topology and contention in high-speed TCP networks. This model is validated within SMPI, an MPI implementation provided by the SimGrid simulation toolkit. With SMPI, standard MPI applications can be compiled and run in a simulated network environment, and traces can be captured without incurring errors from tracing overheads or poor clock synchronization as in physical experiments. SMPI provides features for simulating applications that require large amounts of time or resources, including selective execution, ram folding, and off-line replay of execution traces. We validate our model by comparing traces produced by SMPI with those from other simulation platforms, as well as real world environments.Une bonne modĂ©lisation des communications collective est indispensable Ă  la comprĂ©hension des performances des applications parallĂšles et des diffĂ©rences, mĂȘme minimes, dans leur implĂ©mentation peut drastiquement modifier les performances escomptĂ©es. Nous proposons un modĂšle rĂ©seau hybrid Ă©tendant les approches de type LogP mais permettant de rendre compte de la topologie et de la contention pour les rĂ©seaux hautes performances utilisant TCP. Ce modĂšle est mis en oeuvre et validĂ© au sein de SMPI, une implĂ©mentation de MPI fournie par l'environnement SimGrid. SMPI permet de compiler et d'exĂ©cuter sans modification des applications MPI dans un environnement simulĂ©. Il est alors possible de capturer des traces sans l'intrusivitĂ© ni les problĂšme de synchronisation d'horloges habituellement rencontrĂ©s dans des expĂ©riences rĂ©elles. SMPI permet Ă©galement de simuler des applications gourmandes en mĂ©moire ou en temps de calcul Ă  l'aide de techniques telles l'exĂ©cution sĂ©lective, le repliement mĂ©moire ou le rejeu hors-ligne de traces d'exĂ©cutions. Nous validons notre modĂšle en comparant les traces produites Ă  l'aide de SMPI avec celles de traces d'exĂ©cution rĂ©elle. Nous montrons le gain obtenu en les comparant Ă©galement Ă  celles obtenues avec des modĂšles plus classiques utilisĂ©s dans des outils concurrents

    Émergence d'un leadership distribuĂ© pour la construction d'un enseignement

    Get PDF
    National audienceDuring the first year of the Bachelor degree in Mathematics and Computer Sciences at the University of Strasbourg, students discover computer science by attending a class named Algorithmics and Programming. The pedagogic team is composed of multiple teachers with various backgrounds. In this paper, we present the collective work the pedagogic team achieved to completely rework the curriculum, by switching to a new programming language and also changing the teaching method, using flipped classroom. We analyse the organization of this collective work, built by collaborative decisions, cooperative achievements and a distributed leadership. We discuss the efficiency of this organization, and the observed effects over several years.En premiĂšre annĂ©e de licence de mathĂ©matique et informatique, Ă  l’UniversitĂ© de Strasbourg, les Ă©tudiants dĂ©butent l’informatique en suivant un enseignement intitulĂ© « algorithmique et programmation ». L’équipe pĂ©dagogique est nombreuse, et constituĂ©e d’enseignants aux profils variĂ©s. Dans cette communication, nous prĂ©sentons le travail collectif rĂ©alisĂ© par l’équipe pĂ©dagogique pour remanier en profondeur l’enseignement, en changeant le langage de programmation et la mĂ©thode pĂ©dagogique (classe inversĂ©e). Nous analysons l’organisation de ce travail collectif, caractĂ©risĂ© par des dĂ©cisions collaboratives, des rĂ©alisations coopĂ©ratives et un leadership distribuĂ©. Nous discutons de l’efficacitĂ© de cette organisation, et des effets observĂ©s sur plusieurs annĂ©es

    Comparison and tuning of MPI implementation in a grid context

    Get PDF
    International audienceToday, clusters are often interconnected by long distance networks to compose grids and to provide users with a huge number of available ressources. To write parallel applica- tions, developers are generally using the standard communication library MPI, which has been optimized for clusters. However, two main features of grids - long distance networks and technological heterogeneity - raise the question of MPI efficiency in grids. This paper presents an evaluation and tuning of four recent MPI implementations (MPICH2, MPICH-Madeleine, OpenMPI and YAMPII) in a research grid: Grid'5000. The comparison is based on the execution of pingpong and NAS Parallel Bench- marks. We show that these implementations present several performance differences. We show that YAMPII performs better results than the others. But we argue that executing MPI appli- cations on a grid can be beneficial if some specific parameters are well tuned. The paper details, for each implementation, the tuning leading the best performances

    Une suite logicielle pour la protéomique interfacée sur une grille de calcul. Utilisation d'algorithmes libres pour l'identification MS/MS, le séquençage de novo et l'annotation fonctionnelle.

    No full text
    International audienceUne suite logicielle pour la protéomique interfacée sur une grille de calcul. Utilisation d'algorithmes libres pour l'identification MS/MS, le séquençage de novo et l'annotation fonctionnelle

    Towards Scalable, Accurate, and Usable Simulations of Distributed Applications and Systems

    Get PDF
    The study of parallel and distributed applications and platforms, whether in the cluster, grid, peer-to-peer, volunteer, or cloud computing domain, often mandates empirical evaluation of proposed algorithm and system solutions via simulation. Unlike direct experimentation via an application deployment on a real-world testbed, simulation enables fully repeatable and configurable experiments that can often be conducted quickly for arbitrary hypothetical scenarios. In spite of these promises, current simulation practice is often not conducive to obtaining scientifically sound results. State-of-the-art simulators are often not validated and their accuracy is unknown. Furthermore, due to the lack of accepted simulation frameworks and of transparent simulation methodologies, published simulation results are rarely reproducible. We highlight recent advances made in the context of the SimGrid simulation framework in a view to addressing this predicament across the aforementioned domains. These advances, which pertain both to science and engineering, together lead to unprecedented combinations of simulation accuracy and scalability, allowing the user to trade off one for the other. They also enhance simulation usability and reusability so as to promote an Open Science approach for simulation-based research in the field.L'Ă©tude de systĂšmes et applications parallĂšles et distribuĂ©s, qu'il s'agisse de clusters, de grilles, de systĂšmes pair-Ă -pair de volunteer computing, ou de cloud, demandent souvent l'Ă©valuation empirique par simulation des algorithmes et solutions proposĂ©s. Contrairement Ă  l'expĂ©rimentation directe par dĂ©ploiement d'applications sur des plates-formes rĂ©elles, la simulation permet des expĂ©riences reproductibles pouvant ĂȘtre menĂ©e rapidement sur n'importe quel scĂ©nario hypothĂ©tique. MalgrĂ© ces avantages thĂ©oriques, les pratiques actuelles en matiĂšre de simulation ne permettent souvent pas d'obtenir des rĂ©sultats scientifiquement Ă©prouvĂ©s. Les simulateurs classiques sont trop souvent validĂ©s et leur rĂ©alisme n'est pas dĂ©montrĂ©. De plus, le manque d'environnements de simulation communĂ©ment acceptĂ©s et de mĂ©thodologies classiques de simulation font que les rĂ©sultats publiĂ©s grĂące Ă  cette approche sont rarement reproductibles par la communautĂ©. Nous prĂ©sentons dans cet article les avancĂ©es rĂ©centes dans le contexte de l'environnement SimGrid pour rĂ©pondre Ă  ces difficultĂ©s. Ces avancĂ©es, comprenant Ă  la fois des aspects techniques et scientifiques, rendent possible une combinaison inĂ©galĂ©e de rĂ©alisme et prĂ©cision de simulation et d'extensibilitĂ©. Cela permet aux utilisateurs de choisir le grain des modĂšles utilisĂ©s pour ses simulations en fonction de ses besoins de rĂ©alisme et d'extensibilitĂ©. Les travaux prĂ©sentĂ©s ici amĂ©liorent Ă©galement l'utilisabilitĂ© et la rĂ©utilisabilitĂ© de façon Ă  promouvoir l'approche d'Open Science pour les recherches basĂ©es sur la simulation dans notre domaine
    • 

    corecore